Routing of toll-free numbers using a toll-free exchange

ABSTRACT

Aspects of this disclosure are directed to a method of routing toll-free telephone calls using a toll-free exchange, thereby minimizing the number of hand-offs, increasing the technological capability and reducing the ultimate cost of the toll-free call. Toll-free subscribers are generally assessed a cost based on each exchange plus the duration of the call. Subscribers are also limited to the decades old technological standards of PSTN switching. It is therefore an object of the present disclosure to minimize the number of exchanges, promote technological possibility and simplify the process of directing a toll-free telephone call by providing a toll-free exchange.

INTRODUCTION

Toll-free telephone systems provide originating callers with the abilityto place free telephone calls. More particularly, toll-free telephonenumbers are set up such that the called party, also referred to as thesubscriber of the toll-free number, pays for each call received ratherthan the calling/originating party. In the United States, toll-freenumbers typically begin with a ‘1’ followed by a three-digit code suchas 800, 888, 877, 866, 855, or 844.

Typically, toll-free numbers are assigned by “ResponsibleOrganizations,” or “RESPORGs.” RESPORGs maintain the registration androuting of individual toll-free numbers that are stored in the SMS-800database. Accordingly, each RESPORG has access to the SMS-800 database,which is a central registry of all toll-free numbers. In particular,SMS-800 is an administrative entity responsible for assigning RESPORGIDs to RESPORGs and storing toll-free numbers and routing informationrelated to each toll-free number. Routing information may include theindividual or company that subscribes to each toll-free number and thecarrier associated with handling direct routing of each toll-free call.

Typically, toll-free calls are routed from the service provider of theoriginating caller, wherein the service provider does a look up of thecarrier identification code (CIC) associated with ultimately handlingthe toll-free number. A CIC is a unique code that identifies a telephoneservice provider. The call is thereafter connected to the identifiedservice provider, which routes the call to the toll-free subscriber(sometimes also referred to as the terminating client). Toll-freesubscribers are generally assessed a per minute fee based on a LocalExchange Carrier (LEC) tariff plus a margin for each network and serviceprovider that carriers the call to the subscriber.

ROUTING OF TOLL-FREE NUMBERS USING A TOLL-FREE EXCHANGE

In general terms, this disclosure is directed to a method of toll-freerouting using a toll-free exchange. By using a toll-free exchangeinstead of normal call routing, the method minimizes the number ofhand-offs and reduces the ultimate cost of the toll-free call. Toll-freesubscribers are generally assessed a per minute fee based on a LECtariff plus a margin for each network and service provider that carriersthe call to the subscriber

In a first embodiment, aspects of the present disclosure are directed toa method for routing toll-free calls through a toll-free exchange, themethod, performed by a policy router, comprising: receiving, from anoriginating responsible organization (RESPORG), a toll-free call,wherein the toll-free call is directed to a toll-free subscriber that isserved by a terminating RESPORG; querying a database to determine aRESPORG identification associated with the terminating RESPORG; androuting, to the terminating RESPORG, the toll-free call based in part onthe RESPORG identification.

In a second embodiment, aspects of the present disclosure are directedto a method for routing toll-free calls without using a carrieridentification code (CIC), comprising: receiving, from an originatingresponsible organization (RESPORG), a toll-free call, wherein thetoll-free call is directed to a toll-free subscriber that is served by aterminating RESPORG; querying a database to determine a RESPORGidentification associated with the terminating RESPORG; and routing, tothe terminating RESPORG, the toll-free call through a protected networkbased in part on the RESPORG identification.

In a third embodiment, aspects of the present disclosure are directed toa system for routing a toll-free call using a toll-free exchange, thesystem comprising: at least one session border controller for routing adata portion of the toll-free call within the toll-free exchange; apolicy router for determining, based at least on data included withinthe data portion, a responsible organization (RESPORG) identification(ID) associated with a terminating RESPORG; a service control point forstoring the RESPORG ID of the terminating RESPORG; a database forstoring enrollment information associated with the terminating RESPORG;and a media gateway server farm having one or more server computingdevices for routing a media portion of the toll-free call.

These and various other features as well as advantages whichcharacterize the systems and methods described herein will be apparentfrom a reading of the following detailed description and a review of theassociated drawings. Additional features are set forth in thedescription which follows, and in part will be apparent from thedescription, or may be learned by practice of the technology. Thebenefits and features of the technology will be realized and attained bythe structure particularly pointed out in the written description andclaims hereof as well as the appended drawings.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and areintended to provide further explanation of the novel aspects of thetechnology as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a traditional call connection ofa toll-free call.

FIG. 2 is a block diagram illustrating an alternative embodiment of atraditional call hand-off of a toll-free call.

FIG. 3 is a block diagram illustrating a call hand-off based onprinciples of the present disclosure.

FIG. 4 is a block diagram illustrating an example environment with whicha toll-free exchange interacts according to principles of the presentdisclosure.

FIG. 5 is a flow chart illustrating an example method performed by thepolicy router of the toll-free exchange.

FIG. 6 illustrates an exemplary architecture of a computing device thatcan be used to implement aspects of the toll-free exchange.

DETAILED DESCRIPTION

Various embodiments will be described in detail with reference to thedrawings, wherein like reference numerals represent like parts andassemblies throughout the several views. Reference to variousembodiments does not limit the scope of the claims attached hereto.Additionally, any examples set forth in this specification are notintended to be limiting and merely set forth some of the many possibleembodiments for the appended claims.

In general terms, this disclosure is directed to a method of routingtoll-free telephone calls using a toll-free exchange, thereby minimizingthe number of hand-offs and reducing the ultimate cost of the toll-freecall. As described herein, toll-free subscribers are generally assesseda per minute fee based on a LEC tariff plus a margin for each networkand service provider that carriers the call to the subscriber. It istherefore a benefit of the present disclosure to minimize the number ofnetworks and simplify the process of directing a toll-free telephonecall by providing a toll-free exchange, details of which are furtherprovided herein.

FIG. 1 is a block diagram illustrating a traditional call connection ofa toll-free call or, indeed, any long distance call. As illustrated, acaller places a call by dialing a desired toll-free number using atelephone such as a telephone connected to a landline or a cellularphone. The call is routed to the user's service provider 102 thatmanages each of the incoming and outgoing calls of the user. In someembodiments, the service provider 102 is a RESPORG. The service provider102, using the toll-free number, performs a look up of the CarrierIdentification Code (CIC) for the dialed toll-free number. As shown inFIG. 1, in this example, the service provider 102 sends the call to atandem switch 104 used to exchange traffic between multiple serviceproviders. In some example embodiments, the tandem switch 104 is ownedby the incumbent local exchange carrier (ILEC) of the originatingcaller's service provider 102. The service provider 102 provides thetandem switch 104 with the call and the identified CIC code. The tandemswitch 104 thereafter connects the call to the LEC identified by the CIC106, who may or may not also act as the RESPORG of the toll-freesubscriber. The service provider 106 thereafter accepts the call andcarries the call to the toll-free subscriber. Accordingly, the toll-freecall is ‘terminated’ to the toll-free subscriber and a call isestablished.

FIG. 2 is a block diagram illustrating an alternative embodiment of atraditional call hand-off of a toll-free call. As illustrated, a callerplaces a call by dialing a desired toll-free number using a telephonesuch as a telephone connected to a landline or a cellular phone. Thecall is routed to the user's service provider 102 a that handles each ofthe incoming and outgoing calls of the user. As illustrated in FIG. 2,there may be multiple service providers 102 a-102 n that are used toconnect the call to the tandem 104. In this embodiment, service provider102 n, using the toll-free number, performs a look up of the CIC for thedialed toll-free number. In this example, the service provider 102 nthen sends the call and the CIC to a tandem switch 104 used to exchangetraffic between multiple service providers. The tandem switch 104thereafter connects the call to the LEC identified by the CIC 106. Inthis example, the toll-free number is not provided to the toll-freesubscriber via the LEC 106, but rather through a service provider andRESPORG 202 a. As illustrated in FIG. 2, there may be multiple serviceproviders or RESPORGs 202 a-202 n that are used to connect the call tothe terminating RESPORG 202 n. In such an embodiment, the LEC 106connects the call to the service provider or RESPORG 202 a, whichthereafter routes the call to service provider or RESPORG 202 n. Theservice provider or RESPORG 202 n thereafter routes the call to thetoll-free subscriber. As illustrated in this alternative embodiment,additional entities (e.g., service provider/RESPORGs) are used toconnect the call from the originating caller to the toll-freesubscriber, thereby adding additional costs to the toll-free subscriberand additional complexity to the call exchange process.

The cost structure of toll-free systems is based on a reverse longdistance billing process. As described herein, toll-free systems provideoriginating callers with the ability to place free telephone calls. Inother words, it is the called party—in this case the subscriber of thetoll-free number—who pays for each call received rather than thecalling/originating party. Accordingly, because service provider 102 isowed compensation—known as the “End Office”— from the CIC holder for theuse of its network to connect the call to the tandem, and the tandemprovider is owed compensation from the CIC holder for the tandemfunction, service provider 102 and tandem provider 104 are paid by theservice provider 106, which is paid by the RESPORG 202, which is paid bythe toll-free subscriber. In some embodiments, each subsequent paymentis of a decreasing value due to, in some examples, regulatorymisinterpretation and rampant litigation such that service provider 102may not recoup its costs for the use of its network. It is understoodthat although a limited number of service providers, RESPORGs, andtandems are illustrated, it is understood that there may be one ormultiple such service providers, RESPORGs, or tandems involved in thecall hand-off of a toll-free call. For example, there may be multipleother PSTN, SS7 and VoIP networks, RESPORGs, services providers, andtandems involved in the routing of a toll free call from the calling tothe called party.

FIG. 3 is a block diagram illustrating a different and novel method ofrouting a toll-free call using a toll-free exchange 302, thus bypassingone or more exchanges in the traditional phone network. Generally, thetoll-free exchange 302 is a system used to route calls based on theRESPORG ID of the RESPORG associated with the toll-free subscriber. Morespecifically, the toll-free exchange 302 allows service provider orRESPORG 102 and 202 to register with the toll-free exchange 302, therebyproviding the necessary information for the toll-free exchange 302 toterminate the toll-free call between the two parties without goingthrough any number of tandem switches, LECs, service providers, orRESPORGs. Although service provider 102 may not be listed as a RESPORG,in embodiments in which the service provider 102 manages a toll-freenumber, the service provider 102 is also a RESPORG that is responsiblefor managing calls communicated to and from the toll-free number.Furthermore, the toll-free exchange 302 allows registered RESPORGs toset a buy rate, which is the rate at which that terminating RESPORG willpay the originating party, such as service provider 102, for routing acall to it.

As described in further detail herein, using the disclosed toll-freeexchange 302, toll-free call routing is no longer based on looking up aCIC of the terminating service provider or RESPORG, but rather, routingis performed based simply on looking up the RESPORG ID associated withthe terminating RESPORG. Still further, the toll-free exchange 302allows registered RESPORGs to set a buy rate at which it may pay anoriginating RESPORG or service provider for connecting a call.Accordingly, the toll-free exchange 302 provides terminating RESPORGswith the ability to set its own rate it is willing to pay an originatingservice provider or RESPORG. Aspects of the present disclosure furtherallow originating RESPORGs to set a floor rate, which indicates aminimum rate it will accept in order to route the call through thetoll-free exchange 302 and to the terminating RESPORG. Accordingly,aspects of the present disclosure provide RESPORGs with the option toparticipate on the toll-free exchange 302 and receive payment at theterminating provider's predetermined buy rate while simultaneouslyreducing the number of exchanges involved in terminating the call to thetoll-free subscriber, thus reducing the cost of the call. Although it isnoted that the floor rate is associated with the originating RESPORG andthe buy rate is associated with the terminating RESPORG, it isunderstood that any RESPORG may function as an originating RESPORG and aterminating RESPORG. Accordingly, any one RESPORG may have both a floorrate and a buy rate associated therewith.

As described in further detail herein, the toll-free exchange 302monitors call traffic to calculate and provide an accounting of suchpayments as based on each RESPORG's set buy rate. In some embodiments,the buy rate or the floor rate is a “per second” rate, and in otherembodiments, it is a “per minute” rate, a fixed fee rate, or anegotiated fee rate specific to the parties. Thus, in an embodiment thetotal payment owed to an originating service provider or RESPORG may becalculated based on the duration of the toll-free call multiplied by thebuy rate.

FIG. 4 is a block diagram illustrating an example environment 400 withwhich a toll-free exchange 302 interacts according to principles of thepresent disclosure. As illustrated, the toll-free exchange 302communicates with the originating service provider 102 and theterminating service provider 202 as well as the SMS 800 Database 402. Asillustrated in these examples, both the originating service provider 102and the terminating service provider 202 are RESPORGs having RESPORG IDsthat are registered with the toll-free exchange. It is understood,however, that in other examples, one or more of the originating serviceprovider 102 and the terminating service provider 202 are not enrolledwith the toll-free exchange 302.

As illustrated in this example, the toll-free exchange 302 includes anoriginating switch 404 and a terminating switch 406. In some examplesthe originating switch 404 and the terminating switch 406 are eachsession border controllers (SBCs) that function to route communicationdata packets and metadata. In this example, the toll-free exchange 302further includes a policy router 408, which includes the routing logicand decision-making of the toll-free exchange 302. The toll-freeexchange 302 also includes a database 410 for storing RESPORG IDs, buyrates and other data of RESPORGs that participate in the toll-freeexchange 302. The toll-free exchange 302 further includes a ServiceControl Point (SCP) 412 that interacts with the SMS-800 database toobtain RESPORG IDs of registered RESPORGs. In this example, thetoll-free exchange 302 also includes a media gateway server farm 414,which is configured to process the media data, such as voice and videodata of the calls routed through the exchange 302. Finally, in thisexample, the toll-free exchange 302 includes a thrasher 416 used tocollect call detail records (CDRs) for accounting and administrativepurposes. Although the listed elements are depicted as being part of thetoll-free exchange 302, it is noted that this is merely an illustrativeexample and any combination of elements may be used to implement thetoll-free exchange 302. For example, the exchange could be implementedas a unitary set of equipment housed at a single location or,alternatively, could be individual elements distributed over differentlocations but connected electronically.

As described herein, the originating caller places a toll-free call bydialing a toll-free number. As indicated by arrow 1, the call is routedto the user's service provider. It is understood that the user's serviceprovider need not be a RESPORG, however, for purposes of thisillustrative example, the user's service provider will be referred toherein as the originating RESPORG 102, which is the entity responsiblefor handling each of the incoming and outgoing calls of the originatingcaller. In some embodiments, the originating RESPORG 102 may be acommunications company such as Verizon Wireless of Basking Ridge, N.J.

Upon receiving the call, the originating RESPORG 102 routes the call tothe toll-free exchange 302, as illustrated by arrow 2. Morespecifically, the originating RESPORG 102 routes the call to theoriginating switch 404 of the toll-free exchange 302. In this exampleembodiment, the originating switch 404, or the SBC, includes controlsoftware that routes the data portion of the call to the policy router408 (as indicated by arrow 3). As indicated by the dashed lines, themedia (voice and video) portion of the call is routed directly to themedia server gateway farm 414 using, for example, the Real-timeTransport Protocol (RTP). The toll-free call includes a data portion, orfor example, a header including various metadata relating to the call.Such metadata may include the IP address associated with the originatingRESPORG 102 and the originating caller, the floor rate and buy rateassociated with that RESPORG 102, etc. The originating switch 404informs the policy router (as indicated by arrow 3) of the incomingcall. In particular, the originating switch 404 queries the policyrouter 408 regarding whether an IP address associated with the toll-freenumber is allowed to access the toll-free exchange 302 as an initialauthentication procedure.

The database 410 may store, among other items, an access control list(ACL) that lists each of the RESPORGs enrolled on the toll-free exchange302. In some embodiments, the ACL includes a list of IP addressesassociated with each enrolled RESPORG, yet in other embodiments, otheridentifying information is included on the ACL. As indicated by arrow 4a, the policy router 408, using the IP address of the originatingRESPORG 102, queries the database 410 regarding whether the originatingRESPORG 102 is listed on the ACL, and therefore granted access to thetoll-free exchange 302. In an example embodiment, RESPORG's that wish toparticipate in the toll-free exchange 302 register with the toll-freeexchange 302. Registering with the toll-free exchange 302 may involve,for example, registering RESPORG information such as the RESPORG ID, IPinformation and setting appropriate floor and buy rates. In someembodiments, an administrator of a RESPORG seeking to register with thetoll-free exchange 302 may register via an enrollment website. Suchregistration information is stored in the database 410.

In this example, the policy router 408, which is further described withreference to FIG. 5, includes the logic of the toll-free exchange 302.As described herein, the database 410 stores, among other information,data relating to each RESPORG registered with the exchange such as, forexample, RESPORG IP addresses, and the predetermined floor and buy ratesassociated with each registered RESPORG. In order to determine whetherthe originating RESPORG 102 is enrolled with the toll-free exchange 302,the policy router 408 queries the database 410 to look up, on the storedACL, the IP address associated with the originating RESPORG 102. In anexample, the database 410 determines whether the originating RESPORG 102is an identified IP address on the ACL. Determining whether theoriginating RESPORG 102 is enrolled with the toll-free exchange 302 alsoreturns the floor rate set by the originating RESPORG 102. As describedherein, the floor rate set by the originating RESPORG 102 indicates aminimum rate at which the originating RESPORG 102 will accept in orderto route the call through the toll-free exchange 302, wherein theminimum rate is paid by the terminating RESPORG 202.

If, in this example, the originating RESPORG 102 is not registered withthe toll-free exchange 302, the database 410 will return a response (asindicated by arrow 4 b) indicating the RESPORG is not enrolled with thetoll-free exchange 302, or returns a null response. As such, the policyrouter 408 may signal to the originating switch 404 to reject the call.The RESPORG 102 then may access the traditional telephone network andthe call is completed using one of the traditional methods as describedwith reference to FIGS. 1 and 2. If, however, the originating RESPORG102 is registered with the toll-free exchange 302, the database 410returns a response (as indicated by arrow 4 b) to the policy router 408specifying that the originating RESPORG 202 is enrolled with thetoll-free exchange 302 as well as the floor rate associated therewith.In some embodiments, the database 410 further returns the RESPORG IDassociated with the enrolled originating RESPORG 102.

The policy router 408 (as indicated by arrow 5 a), using the dialedtoll-free number, queries the SCP 412 for the RESPORG ID of theterminating RESPORG 202 that is associated with managing the toll-freenumber. As described herein, the toll-free exchange 302 uses the RESPORGID of the terminating RESPORG 202 to route toll-free telephone calls tothe toll-free subscriber. RESPORG IDs are assigned by and stored in anational SMS-800 database and accessible by the toll-free exchange 302through the utilization of a Service Control Point (SCP) 412, or othermethods. In this illustrative embodiment, the SCP 412 is a clone of theSMS-800 database. In other words, the SCP 412 stores each RESPORG IDthat is registered with the SMS-800 database. In some embodiments, theSCP 412 updates its database daily, and in other embodiments the SCP 412updates its database with RESPORG IDs on a lesser or more frequentbasis. The SCP 412 may initiate a request, such as by a PUSH request, tothe SMS-800 database to receive RESPORG ID updates. Alternatively oradditionally, the SCP 412 may receive updates, such as by a PULLrequest, from the SMS-800 database to receive RESPORG ID updates.

Accordingly, the policy router 408 provides the SCP 412 with thetoll-free number (as indicated by arrow 5 a) to look up the RESPORG IDof the terminating RESPORG 202. The SCP 412 returns a response (asindicated by arrow 5 b) to the policy router 408 providing the RESPORGID of the terminating RESPORG 202.

Using the RESPORG ID of the terminating RESPORG 202, the policy router408 queries the database 410 (as indicated by arrow 6 a) to determinewhether the terminating RESPORG 202 is registered with the toll-freeexchange 302. If, in an example, the terminating RESPORG 202 is notregistered with the toll-free exchange 302, the database 410 returns aresponse (as indicated by arrow 6 b) indicating the terminating RESPORG202 is not registered with the toll-free exchange 302, or a nullresponse. As such, the policy router 408 signals the originating switchto reject the call and the call is completed using one of thetraditional methods as described with reference to FIGS. 1 and 2.Alternatively, if the terminating RESPORG 202 is registered with thetoll-free exchange 302, the database 410 returns a response (asindicated by arrow 6 b) to the policy router 408 specifying theterminating RESPORG 202 is registered with the toll-free exchange 302,the IP address of the terminating RESPORG 202, and the predetermined buyrate, and any additional information relating to the terminating RESPORG202. Depending on the embodiment, any additional information needed bythe exchange to complete the call may also be stored on the database 410and sent to the policy router 408.

Although the above-described embodiments describe example scenarios inwhich a call is completed based on both the originating RESPORG 102 andterminating RESPORG 202 being enrolled with the toll-free exchange 302,registration of the terminating RESPORG 202 is not necessary for theregistered originating RESPORG 102 to complete a call. Although callsare originated by a registered/enrolled RESPORG 102, calls my still berouted even though the terminating RESPORG 202 is notregistered/enrolled with the toll-free exchange 302. If the terminatingRESPORG 202 is not registered/enrolled, the toll-free exchange 302 mayroute the call to the PSTN instead of returning the call to theoriginating RESPORG 102. This decision, which is made by the policyrouter 408, is based on a pre-defined set of criteria configured by theregistered originating RESPORG 102. In other words, the originatingRESPORG 102 may specify whether it prefers to route a call through thetoll-free exchange 302 regardless if the terminating RESPORG isregistered with the toll-free exchange 302. Such an indication may beincluded in the meta information, stored in a header of the toll-freecall.

As indicated by arrow 7, the policy router 408 informs the originatingswitch 404 to attach the IP address of the terminating RESPORG 202, andany additional information, if necessary, to a header of the signalingpacket for the call, which is passed to the media gateway server farm414. In example embodiments, the originating switch 404 attaches aSession Initiation Protocol (SIP) header including the IP address of theterminating RESPORG 202.

As described herein, the media gateway server farm 414 processes themedia portion of the call, such as the voice or video data of the call.In some embodiments, the media gateway server farm 414 processes themedia such as compressing and configuring the media to be carried over anetwork to the terminating RESPORG 202. In an example embodiment, thetoll-free call is placed over a voice over IP network (VoIP). In such anexample, the media gateway server farm 414 configures the voice data ofthe call to be carried over a network to the terminating RESPORG 202using the Real-time Transport Protocol (RTP).

In some embodiments, the media gateway server farm 414 also providesload balancing in order to process voice data. Toll-free calls typicallyoccur more often during the day and gradually decrease during eveningand early morning hours. Accordingly, the media gateway server farm 414provides the necessary load balancing to distribute voice and videoprocessing over one or more servers based on the time of day and calltraffic experienced by the media gateway server farm 414. The mediagateway server farm 414 will expand or contract in size automatically toprovide sufficient computing resources to adapt to call volume.

In some embodiments, the media gateway server farm 414 includes aplurality of computing devices such as one or more servers, wherein theservers may be located in a single geographical area and in otherembodiments, the servers may be located across several remote sites. Inan embodiment, some or all of the media gateway server farm 414 may beleased on-demand from a third-party server provider, such as Amazon orGoogle, and implemented as a ‘cloud service.’

As described herein, once the identity of the terminating RESPORG 202 isdetermined, the originating switch 404 provides the call signaling tothe terminating switch 406 (as indicated by arrow 7). The processedmedia data is also provided to the terminating RESPORG 202 directly bythe media gateway server farm 414. The terminating switch 406 reads theIP address included in the header of the media data packet and forwardsthe data packet to the identified terminating RESPORG 202 (as indicatedby arrow 8). In the example of a VoIP call, the call is transmitted tothe terminating RESPORG 202 over a communication network, such as theInternet. Finally, the terminating RESPORG 202 terminates the call tothe toll-free subscriber (as indicated by arrow 9).

As described herein, the toll-free exchange 302 monitors each call sentthrough the toll-free exchange 302 and provides administrative andaccounting services to the registered RESPORGs. As such, the toll-freeexchange 302 includes a thrasher 416 that monitors each call andprovides a call detail record. In particular, the call detail recordincludes, for example, the duration of the call, the parties involved,the buy rate of the terminating RESPORG 202, and the resulting costassociated with the call, to be paid by the terminating RESPORG 202 tothe toll-free exchange 302 and in part to the originating RESPORG 102.In some embodiments, the thrasher saves the call records in a database418. In embodiments, the database 418 is a cloud-based database, and inother embodiments, the database is hosted within the toll-free exchange302. In an example, the database 418 is accessible by each registeredRESPORG, which allows each RESPORG to view its call records. In someembodiments, the database 418 further provides each RESPORG withanalytical data as well as data identifying each RESPORG participatingon the toll-free exchange 302.

FIG. 5 is a flow chart illustrating an example method 500 performed bythe policy router 408 of the toll-free exchange 302. As describedherein, the policy router 408 includes the logic and decision-making ofthe toll-free exchange 302. Generally, the policy router 408 isconfigured to route calls to terminating RESPORGs. As illustrated in theflow chart of FIG. 5, the policy router 408 begins at start block 500.

The method flows to the authentication step 504. In the authenticationstep 504, the policy router 408 determines whether the originatingRESPORG 102 is an authorized RESPORG (for example, as being listed on anaccess control list). In some embodiments, the originating switch 404communicates with the originating RESPORG 102 via the Session InitiationProtocol (SIP). In other embodiments, other protocols may be used.Accordingly, the policy router 408, using meta information (such as anIP address or other identifying information, depending on the connectionprotocol used) of the originating RESPORG 102, queries the database 410to determine whether the originating RESPORG 102 is allowed to accessthe toll-free exchange 302 as determined by being listed on an accesscontrol list. In an example, the database 410 performs a look up of themeta information, such as the IP address of the originating RESPORG 102to determine whether the originating RESPORG 102 is listed on a storedaccess control list. If the database 410 determines that the originatingRESPORG 102 is not listed on the access control list, the databaseprovides the policy router 408 with a negative response, such as a “no”response and the call is rejected, as indicated by step 506. If,however, the originating RESPORG 102 is listed on the access controllist, the database 410 provides the policy router 408 with anaffirmative response such as a “yes” response and the method 500proceeds to the terminating RESPORG ID enrollment verification step 508.

In the terminating RESPORG ID enrollment verification step 508, thepolicy router 408 determines whether the terminating RESPORG 202 isenrolled with the toll-free exchange 302. As described with reference toFIG. 4, the policy router 408 uses the ten digit toll-free number dialedor requested by the originating RESPORG 102 to query the SCP 412 for theterminating RESPORG ID. As described, the SCP 412 stores RESPORG IDsassociated with all RESPORGs registered with the national SMS-800database 402. Using the RESPORG ID result from the SCP 412 the policyrouter 408 then queries the database 410 to determine whether theRESPORG ID of the terminating RESPORG 202 is registered with thetoll-free exchange 302. In the enrollment verification step 508, if thedatabase 410 does not identify the terminating RESPORG 202 as beingregistered with the toll-free exchange 302, the database 410 returns, tothe policy router 408, a “no” response and the method 500 proceeds tothe request termination step 510.

In the request termination step 510, the policy router 408 determineswhether the originating RESPORG 102 requested the toll-free exchange 302to terminate calls to the terminating RESPORG 202 irrespective of theenrollment status of the terminating RESPORG 202. If, in the requesttermination step 510, the policy router 408 determines that theoriginating RESPORG 102 requested the toll-free exchange 302 toterminate calls irrespective of the enrollment status of the terminatingRESPORG 202, the method proceeds to the connect call step 512. In someembodiments, this request is included in a message header of thetoll-free call.

In the connect call step 512, because the terminating RESPORG 202 is notenrolled with the toll-free exchange 302, the policy router insteadconnects the call directly to the PSTN where traditional CIC basedrouting and termination will occur.

If, however, in the request termination step 510, the policy router 408determines that the originating RESPORG 102 did not request to terminatecalls to a non-participating terminating RESPORG 202, the method 500proceeds to step 506 and the call is rejected.

In the enrollment verification step 508, if the policy router 408determines that the terminating RESPORG 202 is enrolled with thetoll-free exchange 302, the method 500 flows to the rate comparison step514. In the rate comparison step 514, the policy router 408 determineswhether the floor rate of the originating RESPORG 102 is less than thebuy-rate of the terminating RESPORG 202. Effectively, the policy router408 determines whether it is cost beneficial for the originating RESPORG102 to connect the call to the terminating RESPORG 202. If the policyrouter 408 determines that the floor rate of the originating RESPORG 102is less than the buy-rate of the terminating RESPORG 202, the method 500proceeds to the connect call step 516. In the connect call step 516, thepolicy router 408 uses the RESPORG ID of the terminating RESPORG 202 toconnect the call.

If, however, the policy router 408 determines that the floor rate of theoriginating RESPORG 102 is greater than the buy-rate of the terminatingRESPORG 202, the method 500 proceeds to step 506 and the call isrejected.

Thus, the method described in FIG. 5 routes a toll-free call using theRESPORG ID and without use or knowledge of the carrier identificationcode (CIC) associated with the terminating traditional public switchednetworks. The exchange also allows for modern innovations such as nativevideo and high-definition voice calls that are not possible ontraditional public switch networks. In addition, the method can connectcalls using only one exchange and also maintains a single accounting ofthe cost associated with connecting the call. These features distinguishit over the prior art method that may utilize multiple exchanges inwhich each exchange maintains its own switching infrastructure andaccounting of the portion it handles.

FIG. 6 illustrates an exemplary architecture of a computing device thatcan be used to implement aspects of the toll-free exchange 302. In thisdisclosure, a laptop or personal computer 140, tablet computing device140, phone 140, and servers 150 are example computing devices. FIG. 6can be used to implement aspects of the present disclosure including anyof the plurality computing devices, such as the policy router 408 asillustrated in and described with reference to FIG. 4. The computingdevice described in FIG. 6 can be used to execute the operating system,application programs, and software modules (including the softwareengines) described herein. By way of example, the computing device willbe described below as the computing device 650. To avoid unduerepetition, this description of the computing device will not beseparately repeated herein for each of the other computing devices,including policy router 408, but such device can also be configured asillustrated and described with reference to FIG. 6.

The computing device 650 includes, in some embodiments, at least oneprocessing device 602, such as a central processing unit (CPU). Avariety of processing devices are available from a variety ofmanufacturers, for example, Intel or AMD. In this example, the computingdevice 650 also includes a system memory 604, and a system bus 606 thatcouples various system components including the system memory 604 to theprocessing device 602. The system bus 606 is one of any number of typesof bus structures including a memory bus, or memory controller; aperipheral bus; and a local bus using any of a variety of busarchitectures.

Examples of computing devices suitable for the computing device 650include a server computer, a desktop computer, a laptop computer, atablet computer, a mobile computing device (such as a smart phone, aniPod® or iPad® mobile digital device, or other mobile devices), or otherdevices configured to process digital instructions.

The system memory 604 includes read only memory 608 and random accessmemory 610. A basic input/output system 612 containing the basicroutines that act to transfer information within computing device 650,such as during start up, is typically stored in the read only memory608.

The computing device 650 also includes a secondary storage device 614 insome embodiments, such as a hard disk drive, for storing digital data.The secondary storage device 614 is connected to the system bus 606 by asecondary storage interface 616. The secondary storage devices 614 andtheir associated computer readable media provide nonvolatile storage ofcomputer readable instructions (including application programs andprogram modules), data structures, and other data for the computingdevice 650.

Although the exemplary environment described herein employs a hard diskdrive as a secondary storage device, other types of computer readablestorage media are used in other embodiments. Examples of these othertypes of computer readable storage media include magnetic cassettes,flash memory cards, digital video disks, Bernoulli cartridges, compactdisc read only memories, digital versatile disk read only memories,random access memories, or read only memories. Some embodiments includenon-transitory media. Additionally, such computer readable storage mediacan include local storage or cloud-based storage.

A number of program modules, such as executable computer programs, canbe stored in secondary storage device 616 or memory 604, including anoperating system 618, one or more application programs 198, otherprogram modules 622 (such as the software engines described herein,including one or more of the user accounts management engine 202,spending rules engine 204, merchant communication engine 206,transaction communication engine 208, and reporting engine 210), andprogram data 624. The computing device 650 can utilize any suitableoperating system, such as Microsoft Windows™, Google Chrome™, Apple OS,and any other operating system suitable for a computing device.

In some embodiments, a user provides inputs to the computing device 650through one or more input devices 626. Examples of input devices 626include a keyboard 628, mouse 630, microphone 632, and touch sensor 634(such as a touchpad or touch sensitive display). Other embodimentsinclude other input devices 626. The input devices are often connectedto the processing device 602 through an input/output interface 636 thatis coupled to the system bus 606. These input devices 626 can beconnected by any number of input/output interfaces, such as a parallelport, serial port, game port, or a universal serial bus. Wirelesscommunication between input devices and the interface 636 is possible aswell, and includes infrared, BLUETOOTH® wireless technology,802.11a/b/g/n, cellular, or other radio frequency communication systemsin some possible embodiments.

In this example embodiment, a display device 638, such as a monitor,liquid crystal display device, projector, or touch sensitive displaydevice, is also connected to the system bus 606 via an interface, suchas a video adapter 640. In addition to the display device 638, thecomputing device 650 can include various other peripheral devices (notshown), such as speakers or a printer.

When used in a local area networking environment or a wide areanetworking environment (such as the Internet), the computing device 650is typically connected to the network 644 through a network interface642 as an Ethernet interface. Other possible embodiments use othercommunication devices. For example, some embodiments of the computingdevice 650 include a modem for communicating across the network.

The computing device 650 typically includes at least some form ofcomputer readable media. Computer readable media includes any availablemedia that can be accessed by the computing device 650. By way ofexample, computer readable media include computer readable storage mediaand computer readable communication media.

Computer readable storage media includes volatile and nonvolatile,removable and non-removable media implemented in any device configuredto store information such as computer readable instructions, datastructures, program modules or other data. Computer readable storagemedia includes, but is not limited to, random access memory, read onlymemory, electrically erasable programmable read only memory, flashmemory or other memory technology, compact disc read only memory,digital versatile disks or other optical storage, magnetic cassettes,magnetic tape, magnetic disk storage or other magnetic storage devices,or any other medium that can be used to store the desired informationand that can be accessed by the computing device 650. Computer readablestorage media does not include computer readable communication media.

Computer readable communication media typically embodies computerreadable instructions, data structures, program modules or other data ina modulated data signal such as a carrier wave or other transportmechanism and includes any information delivery media. The term“modulated data signal” refers to a signal that has one or more of itscharacteristics set or changed in such a manner as to encode informationin the signal. By way of example, computer readable communication mediaincludes wired media such as a wired network or direct-wired connection,and wireless media such as acoustic, radio frequency, infrared, andother wireless media. Combinations of any of the above are also includedwithin the scope of computer readable media.

The computing device illustrated in FIG. 6 is also an example ofprogrammable electronics, which may include one or more such computingdevices, and when multiple computing devices are included, suchcomputing devices can be coupled together with a suitable datacommunication network so as to collectively perform the variousfunctions, methods, or operations disclosed herein.

The various embodiments described above are provided by way ofillustration only and should not be construed to limit the claimsattached hereto. Those skilled in the art will readily recognize variousmodifications and changes that may be made without following the exampleembodiments and applications illustrated and described herein, andwithout departing from the true spirit and scope of the followingclaims. For example, rather using a general purpose processor with anoperating system executing software programs, one of skill in the artwill recognize that some or all of the functionality described abovecould be equally implemented on a purpose-built piece of hardware, inembedded systems in which the logic is stored on read only memory asfirmware, or as an integrated circuit.

What is claimed is:
 1. A method for routing toll-free calls through atoll-free exchange, the method, performed by a policy router of thetoll-free exchange, comprising: receiving, from an originatingresponsible organization (RESPORG), a toll-free call, wherein thetoll-free call is directed to a toll-free subscriber that is served by aterminating RESPORG; querying a database to determine a RESPORGidentification associated with the terminating RESPORG, wherein thedatabase is associated with the toll-free exchange and stores theRESPORG identification associated with the terminating RESPORG; androuting, to the terminating RESPORG, the toll-free call based in part onthe RESPORG identification.
 2. The method of claim 1, wherein theoriginating RESPORG and the terminating RESPORG are enrolled in thetoll-free exchange.
 3. The method of claim 1, wherein the RESPORGidentification is obtained by a service control point.
 4. The method ofclaim 1, further comprising: monitoring the toll-free call to generate acall detail record, wherein the call detail record includes at least oneof: a time duration of the toll-free call, an identification of theoriginating RESPORG and the terminating RESPORG, buy-rate of theterminating RESPORG, a floor rate of the originating RESPORG, and a costassociated with the toll-free call.
 5. The method of claim 4, whereinrouting to the terminating RESPORG further comprises: determining thatthe floor rate of the originating RESPORG is less than the buy rate ofthe terminating RESPORG.
 6. The method of claim 1, further comprising:determining whether the terminating RESPORG is enrolled with theexchange; based on a determination that the terminating RESPORG is notenrolled with the exchange, rejecting the toll-free call; and based on adetermination that the terminating RESPORG is enrolled with theexchange, connecting the toll-free call to the terminating RESPORG. 7.The method of claim 6, wherein based on a determination that theterminating RESPORG is not enrolled with the exchange, furthercomprises: determining whether the originating RESPORG requested toconnect the toll-free call to a public switched telephone network. 8.The method of claim 1, wherein a carrier identification code (CIC) ofthe terminating RESPORG is not used by the method.
 9. The method ofclaim 1, further comprising routing a media portion of the toll-freecall through a media server farm, wherein the media server farmconfigures the media portion of the toll-free call for routing.
 10. Amethod for routing toll-free calls without using a carrieridentification code (CIC), comprising: receiving, from an originatingresponsible organization (RESPORG), a toll-free call, wherein thetoll-free call is directed to a toll-free subscriber that is served by aterminating RESPORG; querying a database to determine a RESPORGidentification associated with the terminating RESPORG, wherein thedatabase is associated with the toll-free exchange and stores theRESPORG identification associated with the terminating RESPORG; androuting, to the terminating RESPORG, the toll-free call through aprotected network based in part on the RESPORG identification.
 11. Themethod of claim 10, further comprising: determining whether theterminating RESPORG is enrolled with the exchange; based on adetermination that the terminating RESPORG is not enrolled with theexchange, rejecting the toll-free call; and based on a determinationthat the terminating RESPORG is enrolled with the exchange, connectingthe toll-free call to the terminating RESPORG.
 12. The method of claim10, further comprising: monitoring the toll-free call to generate a calldetail record, wherein the call detail record includes at least one of:a time duration of the toll-free call, an identification of theoriginating RESPORG and the terminating RESPORG, buy-rate of theterminating RESPORG, a floor rate of the originating RESPORG, and a costassociated with the toll-free call.
 13. The method of claim 12, whereinrouting to the terminating RESPORG further comprises: determining thatthe floor rate of the originating RESPORG is less than the buy rate ofthe terminating RESPORG.
 14. The method of claim 10, further comprisingrouting a media portion of the toll-free call through a media serverfarm, wherein the media server farm configures the media portion of thetoll-free call for routing.
 15. The method of claim 10, whereinreceiving, from an originating RESPORG, a toll-free further comprises:receiving, at a session border controller, a data portion of thetoll-free call; and receiving, at a media gateway server farm, a mediaportion of the call.
 16. The method of claim 15, wherein routing, to theterminating RESPORG further comprises: routing, from a second sessionborder controller to the terminating RESPORG, the data portion of thetoll-free call; routing, from the media gateway server farm to theterminating RESPORG, the media portion of the call.
 17. A system forrouting a toll-free call using a toll-free exchange, the systemcomprising: at least one session border controller for routing a dataportion of the toll-free call within the toll-free exchange; a policyrouter for determining, based at least on data included within the dataportion, a responsible organization (RESPORG) identification (ID)associated with a terminating RESPORG; a service control point forstoring the RESPORG ID of the terminating RESPORG; a database forstoring enrollment information associated with the terminating RESPORG;and a media gateway server farm having one or more server computingdevices for routing a media portion of the toll-free call based in parton the RESPORG ID of the terminating RESPORG.
 18. The system of claim17, further comprising a thrasher component for storing a call datarecord of the toll-free call.
 19. The system of claim 17, furthercomprising a first session border controller for receiving the dataportion of the toll-free call, wherein the first session bordercontroller is further configured to read data from a header of the dataportion of the toll-free call and to write data to the header of thedata portion of the toll-free call; and a second session bordercontroller for routing the data portion of the toll-free call to theterminating RESPORG based in part on the data read from the data portionof the toll-free call.
 20. The system of claim 17, wherein the databasestores at least one of: enrollment status information of one or moreenrolled RESPORGs; payment information of each of the one or moreenrolled RESPORGs, comprising: a buy rate; and a floor rate;identification information of each of the one or more enrolled RESPORGs;and an access control list for listing each enrolled RESPORG.